#include <stdio.h>
#include <stdlib.h>
using namespace std;

#define TEST
//#define DEBUG

#ifdef TEST
long k;
char *a;
char *memory;
#else
const long k = 11;
const char a[] = {1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0};
char memory[] = {0, 1, 0, 0, 0, 0, 0, 1, 1, 0, 0};
#endif

int main(int argc, char *argv[])
{
	if (argc != 2)
        	return 1;

	/****************** DEKLARACJA ******************/
	long n, z;
	unsigned int wynik, bit;

	/****************** WCZYTYWANIE ******************/
	if (sscanf(argv[1], "%ld", &n) != 1)
	        return 1;
	        
#ifdef TEST
scanf("%ld\n", &k);
a = (char *) malloc(k*sizeof(char));
memory = (char *) malloc(k*sizeof(char));
char c;
for(long i = 0 ; i < k ; ++i) {
    scanf("%c", &c);
    a[i] = c - '0';
}
scanf("\n");
for(long i = 0 ; i < k ; ++i) {
    scanf("%c", &c);
    memory[i] = c - '0';
}
#endif
#ifdef DEBUG
for(int q = 0 ; q < k ; ++q) {
   printf("%d", (int)a[q]);
}
printf("\n");
for(int q = 0 ; q < k ; ++q) {
   printf("%d", (int)memory[q]);
}
printf("\n");
#endif

	/****************** INICJALIZACJA ******************/
	z = 0;

	/****************** OBLICZENIA i WYPISYWANIE ******************/
	for(long i = 0 ; i < n ; ++i) {
		
		wynik = 0;
		for(int j = 0 ; j < 32 ; ++j) {
		
#ifdef DEBUG
for(int q = 0 ; q < k ; ++q) {
   printf("%d", (int)memory[q]);
}
printf("\n");
#endif

			bit = 0;
			for(int m = 0 ; m < k ; ++m) {
				if(a[m] != 0) {
					bit = bit + memory[(m + z) % k];
				}
			}

			// konstruowanie liczby wynikowej z 32 bitów
			wynik = wynik * 2 + (bit % 2);
			
			// dodanie nowego bitu do pamięci
			memory[z % k] = (bit % 2);
			++z;
		}

		printf("%u/4294967296\n", wynik);
		
		
	}

	/****************** CZYSZCZENIE ******************/
#ifdef TEST
free(a);
free(memory);
#endif

	return 0;
}
